<HTML><style type="text/css">  ul.inheritance {
      margin:0;
      padding:0;
  }
  ul.inheritance li {
       display:inline;
       list-style-type:none;
  }
  ul.inheritance li ul.inheritance {
    margin-left:15px;
    padding-left:15px;
    padding-top:1px;
  }
</style><!-- ======== START OF CLASS DATA ======== -->
<div class="header">
    <div class="subTitle">java.lang</div>
    <h2 title="Class String" class="title">Class String</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
    <li><a href="../../java/lang/Object.html" title="class in java.lang">java.lang.Object</a></li>
    <li>
        <ul class="inheritance">
            <li>java.lang.String</li>
        </ul>
    </li>
</ul>
<DL>            <dl>
                <dt>All Implemented Interfaces:</dt>
                <dd><a href="../../java/io/Serializable.html" title="interface in java.io">Serializable</a>, <a href="../../java/lang/CharSequence.html" title="interface in java.lang">CharSequence</a>, <a href="../../java/lang/Comparable.html" title="interface in java.lang">Comparable</a>&lt;<a href="../../java/lang/String.html" title="class in java.lang">String</a>&gt;</dd>
            </dl>
            <br>
<pre>public final class <span class="strong">String</span>
extends <a href="../../java/lang/Object.html" title="class in java.lang">Object</a>
implements <a href="../../java/io/Serializable.html" title="interface in java.io">Serializable</a>, <a href="../../java/lang/Comparable.html" title="interface in java.lang">Comparable</a>&lt;<a href="../../java/lang/String.html" title="class in java.lang">String</a>&gt;, <a href="../../java/lang/CharSequence.html" title="interface in java.lang">CharSequence</a></pre>
            <div class="block">The <code>String</code> class represents character strings. All
                string literals in Java programs, such as <code>"abc"</code>, are
                implemented as instances of this class.
                <p>
                    Strings are constant; their values cannot be changed after they
                    are created. String buffers support mutable strings.
                    Because String objects are immutable they can be shared. For example:
                <p><blockquote><pre>
     String str = "abc";
 </pre></blockquote><p>
                    is equivalent to:
                <p><blockquote><pre>
     char data[] = {'a', 'b', 'c'};
     String str = new String(data);
 </pre></blockquote><p>
                    Here are some more examples of how strings can be used:
                <p><blockquote><pre>
     System.out.println("abc");
     String cde = "cde";
     System.out.println("abc" + cde);
     String c = "abc".substring(2,3);
     String d = cde.substring(1, 2);
 </pre></blockquote>
                <p>
                    The class <code>String</code> includes methods for examining
                    individual characters of the sequence, for comparing strings, for
                    searching strings, for extracting substrings, and for creating a
                    copy of a string with all characters translated to uppercase or to
                    lowercase. Case mapping is based on the Unicode Standard version
                    specified by the <a href="../../java/lang/Character.html" title="class in java.lang"><code>Character</code></a> class.
                <p>
                    The Java language provides special support for the string
                    concatenation operator (&nbsp;+&nbsp;), and for conversion of
                    other objects to strings. String concatenation is implemented
                    through the <code>StringBuilder</code>(or <code>StringBuffer</code>)
                    class and its <code>append</code> method.
                    String conversions are implemented through the method
                    <code>toString</code>, defined by <code>Object</code> and
                    inherited by all classes in Java. For additional information on
                    string concatenation and conversion, see Gosling, Joy, and Steele,
                    <i>The Java Language Specification</i>.

                <p> Unless otherwise noted, passing a <tt>null</tt> argument to a constructor
                    or method in this class will cause a <a href="../../java/lang/NullPointerException.html" title="class in java.lang"><code>NullPointerException</code></a> to be
                    thrown.

                <p>A <code>String</code> represents a string in the UTF-16 format
                    in which <em>supplementary characters</em> are represented by <em>surrogate
                        pairs</em> (see the section <a href="Character.html#unicode">Unicode
                        Character Representations</a> in the <code>Character</code> class for
                    more information).
                    Index values refer to <code>char</code> code units, so a supplementary
                    character uses two positions in a <code>String</code>.
                <p>The <code>String</code> class provides methods for dealing with
                    Unicode code points (i.e., characters), in addition to those for
                    dealing with Unicode code units (i.e., <code>char</code> values).</div>
            <dl><dt><span class="strong">Since:</span></dt>
                <dd>JDK1.0</dd>
                <dt><span class="strong">See Also:</span></dt><dd><a href="../../java/lang/Object.html#toString()"><code>Object.toString()</code></a>,
                    <a href="../../java/lang/StringBuffer.html" title="class in java.lang"><code>StringBuffer</code></a>,
                    <a href="../../java/lang/StringBuilder.html" title="class in java.lang"><code>StringBuilder</code></a>,
                    <a href="../../java/nio/charset/Charset.html" title="class in java.nio.charset"><code>Charset</code></a>,
                    <a href="../../serialized-form.html#java.lang.String">Serialized Form</a></dd></dl>
        </li>
    </ul>
</div>
</HTML>